package com.caifu.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.caifu.bean.Result;
import com.caifu.excel.ExcelMeicineDistribution;
import com.caifu.pojo.SysUser;
import com.caifu.pojo.YlMeicineDistribution;

import java.util.List;
import java.util.Map;

/**
 * ClassName: YlMeicineDistributionService.java
 *
 * @author: tianwenwen
 * createTime: 2020年11月12日 11:09:32
 **/
public interface YlMeicineDistributionService {

    /**
     * description: 添加药物
     * param ylUserMedicine
     * return: com.caifu.bean.Result
     * author: Tian
     * time: 2020/11/12 9:33
     */
    Result addMeicineDistribution(YlMeicineDistribution ylMeicineDistribution, SysUser user);

    /**
     * description: 根据id获取药物信息
     * param id
     * return: com.caifu.pojo.YlUserMedicine
     * author: Tian
     * time: 2020/11/12 10:08
     */
    YlMeicineDistribution getMeicineDistributionById(String id);

    /**
     * description: 根据老人ID查询老人药物库
     * param userNo
     * return: com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.caifu.pojo.YlUserMedicine>
     * author: Tian
     * time: 2020/11/12 10:31
     */
    IPage<YlMeicineDistribution> getgetMeicineDistributionByIdByUserNo(String userNo, long currentPage, long pageSize);

    /**
     * description:  根据id删除药物
     * param id
     * return: void
     * author: Tian
     * time: 2020/11/12 10:48
     */
    void deleteById(String id);

    /**
     * description: 获取导出数据表头
     * param
     * return: java.util.List<java.util.List<java.lang.String>>
     * author: Tian
     * time: 2020/11/19 10:13
     */
    List<List<String>> getExcelHead();

    /**
     * description: 获取excel导出数据
     * param
     * return: java.util.List<com.caifu.excel.ExcelMeicineDistribution>
     * author: Tian
     * time: 2020/11/19 10:19
     */
    List<ExcelMeicineDistribution> getExcelData(String userNo);

    /**
     * description: 获取发放、登记老人导出信息
     * param userNo
     * return: java.util.Map<java.lang.String,java.lang.Object>
     * author: Tian
     * time: 2020/11/19 17:19
     */
    Map<String,Object> getUserInfo(String userNo);
}
